iT邦幫忙

2021 iThome 鐵人賽

DAY 24
0
Modern Web

從零開始的JS學習之路系列 第 24

[Day24] Array methods 陣列操作方法(2)

  • 分享至 

  • xImage
  •  

一秒進入主題,今天繼續實作練習 Array methods。

filter()

顧名思義濾掉某個數,然後印出陣列結果;例如我們不要 43 設 !=43,新的陣列即排除43;或者陣列裡數字不大於 43 那就會列出小於 43 的數字,可以觀察到 length 的改變。

const numarr = [16, 7, 41, 43, 75, 91, 28, 39, 85, 14, 3, 43];
numarr.filter(a => a != 43);
// [16, 7, 41, 75, 91, 28, 39, 85, 14, 3]
numarr.filter(a => a < 43)
// [16, 7, 41, 28, 39, 14, 3]

以下是一些判斷後回傳布林值的方法

every()

將陣列裡每一個元素帶入函式內判斷,全部符合的話會回傳布林值 true,只要有一個不符合,即回傳 false。

const numarr1 = [16, 7, 41, 43, 75, 91, 28, 39, 85, 14, 3, 43];
numarr1.every((b) => b < 2); // false
numarr1.every((b) => b > 2); // true

some()

將陣列裡每一個元素帶入函式內判斷,可以想成與 every() 相反,some() 只要有一個符合,即回傳 true,都不符合會回傳 false。

const numarr2 = [16, 7, 41, 43, 75, 91, 28, 39, 85, 14, 3, 43];
numarr2.some((b) => b > 100); // false,全部都不大於 100
numarr2.some((b) => b < 31); //  true,部分小於 31

includes()

判斷陣列裡是否包含某個值,有兩個參數第一個是值,第二個是索引值,符合的話回傳 true 否則回傳 false。

const numarr3 = [62, 19, 24, 63, 35, 17];
numarr3.includes(63); // true
numarr3.includes(63, 5); // false,從索引值 5 開始判斷

Array.isArray()

可判斷該變數是否為陣列。

const x = { name: "Rex", age: 25 };
const y = 5566;
const z = ["Rex", 25, 55, 66];
Array.isArray(x); // false,是 object
Array.isArray(y); // false,是 number
Array.isArray(z); // true

參考資料

Array-MDN
JavaScript Array 陣列操作方法大全 ( 含 ES6 )-OOXX


上一篇
[Day23] Array methods 陣列操作方法(1)
下一篇
[Day25] Array methods 陣列操作方法(3)
系列文
從零開始的JS學習之路30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
Chiahsuan
iT邦新手 4 級 ‧ 2021-10-09 20:32:01

/images/emoticon/emoticon12.gif
有搶到稀有植物嗎?

Rex iT邦新手 3 級 ‧ 2021-10-10 10:44:49 檢舉

噓~~
/images/emoticon/emoticon01.gif

我要留言

立即登入留言